package javaCode.chapter07.Homework.homework13;

//1、做一个Student类，Student类有名称(name)，性别(sex)，年龄(age)，学号(stu_id)，做合理封装，通过构造器在创建对象时将4个属性赋值
//4、学生需要有学习的方法(study)，在方法里写上 "我承诺，我会好好的学习。"
//6、学生和教师都有玩的方法(play)，学生玩的是足球，老师玩的是象棋，此方法返回字符串，分别返回 "xx爱玩足球"和"xx爱玩象棋" 。因为玩的方名称一样，所以要求此方法定义在父类中，子类实现重写。
public class Student extends Person{
    //特有属性
    private String stu_id;

    public Student(String name, String gender, int age, String stu_id) {
        super(name, gender, age);
        this.stu_id = stu_id;
    }

    public String getStu_id() {
        return stu_id;
    }

    public void setStu_id(String stu_id) {
        this.stu_id = stu_id;
    }

    public void study(){
        System.out.println("我承诺，我会好好的学习。");
    }

    @Override
    public String play() {
        return super.play() + "足球";
    }

    //编写一个输出信息的方法，体现封装
    public void printInfo(){
        System.out.println("学生的信息:");
        System.out.println(super.basicInfo());
        System.out.println("学号: " + stu_id);
        this.study();
        System.out.println(this.play());
    }

    @Override
    public String toString() {
        return "Student{" +
                "stu_id='" + stu_id + '\'' +
                '}' + super.toString();
    }
}
